<?php

/**
 * 有效的括号
 * Class Solution
 */
class Solution {

    /**
     * @param String $s
     * @return Boolean
     */
    function isValid($s) {
        $arr=[
            '('=>')',
            '{'=>'}',
            '['=>']'
        ];
        $len=strlen($s);
        $stack=[];//栈
        for($i=0;$i<$len;$i++){
            $char=$s[$i];
            if(array_key_exists($char,$arr)){
                array_push($stack,$char);
                continue;
            }
            if(in_array($char,$arr)){
                $charTmp=array_pop($stack);
                if(empty($charTmp)){
                    return false;
                }elseif($arr[$charTmp]!=$char){
                   return false;
                }
            }
        }
        if(!empty($stack)){
            return false;
        }
        return true;
    }
}